package com.cmwa.scbp.sys.msg.adapter;

import java.util.List;
import java.util.Map;

import com.cmwa.scbp.sys.msg.service.IMessageOperationService;
import com.cmwa.scbp.sys.msg.vo.MessageOperationParams;
import com.cmwa.scbp.sys.msg.vo.MsgConfVo;

public abstract class BasicMessage {
	public IMessageOperationService messageOperationService;

	/**
	 * 具体实现子类必须实现这个赋值service方法，才能得到获取数据的入口
	 * @param messageOperationService
	 */
	public void setMessageOperationService(IMessageOperationService messageOperationService){
		this.messageOperationService=messageOperationService;
	}
	/**
	 * 返回的是所有消息子类型的所有数据
	 * @param msgConfDetailVos 传入筛选后的消息子类型
	 * @return
	 */
	public abstract List<Map<String, Object>> obtainMsgData(String sign,MsgConfVo msgConfVo,MessageOperationParams params);
	/**
	 * 返回的是所有消息子类型的所有人员
	 * @param msgConfDetailVos 传入筛选后的消息子类型
	 * @return
	 */
	public abstract List<Map<String, Object>> obtainMsgEmp(String sign,MsgConfVo msgConfVo,MessageOperationParams params);
	/**
	 * 返回对应每个用户下所有类型集合
	 * @param msgConfDetailVos
	 * @param msgDatas
	 * @return
	 */
	public abstract Map<String,Object> assembleMessage(MsgConfVo msgConfVo,List<Map<String, Object>> msgData,MessageOperationParams params);
	
}
